package com.tedu._04mybatis.mapper;

import com.tedu._04mybatis.pojo.Article;
import com.tedu._04mybatis.pojo.ArticleVO1;
import com.tedu._04mybatis.pojo.ArticleVO2;
import com.tedu._04mybatis.pojo.ArticleVO3;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface ArticleMapper {

    int insertArticle(Article article);

    int deleteArticleById(Integer id);

    int updateArticleById(Article article);

    Article selectArticleById(Integer id);

    List<Article> selectAllArticle();

    /*
        查看每篇文章的部分信息:内容，修改时间
        根据文章的id进行检索
     */
    ArticleVO1 selectArticleVO1ById(Integer id);

    /*
        查看所有文章的:内容,修改时间,作者id
     */
    List<ArticleVO2> selectAllArticleVO2();

    /**
     * 动态修改文章信息
     * @param article
     * @return
     */
    int dynamicUpdateArticle(Article article);

    /**
     * 批量删除文章
     * @param ids
     * @return
     */
    int dynamicDeleteArticle(Integer[] ids);

    int dynamicDeleteArticle2(List<Integer> ids);

    int countArticle();

    ArticleVO3 selectArticleVO3ById(Integer id);

    List<ArticleVO3> selectAllArticleVO3();
}














